import { fileURLToPath, URL } from 'node:url'

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue(),
  ],
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    },
    /*

    导入时想要省略的扩展名列表

    ['.mjs', '.js', '.mts', '.ts', '.jsx', '.tsx', '.json']
    */
    // extensions: ['.js', '.ts', '.vue', '.json']
  },
  esbuild: {
    // 删除console 和 debugger
    // drop: ["console", "debugger"],
  },
  // 构建对象
  build: {

    // rollup的配置项,将与vite配置项合并
    rollupOptions: {

      external: [/node_modules/],
    },

    /*
        设置混淆器(压缩器)
        boolean | 'terser' | 'esbuild'
        默认esbuild
        terser 压缩文件会更小
        esbuild速度更快
     */
    minify: 'terser',
    terserOptions: {

      compress: {
        // 去除console
        drop_console: true,
        // 去除debugger
        drop_debugger: true
      }

    }

  }
})
